// substr(start, length)方法返回一个字符串中从指定位置开始到指定字符数的字符

/**
 *  特殊情况：
 *      1. start < 0: 从后取
 *      2. length 小于或等于0：重置为0，返回空数组
 *      3. length+start 大于字符串长度或者不存在length 就取到末尾
 * **/ 

String.prototype.MySubstr = function(start, length) {
    if (length <=0) return '';
    start = start < 0 ? start+this.length : start;
    length = !length || length + start > this.length ? this.length - start : length;

    let res = '';
    for (let i = start; i < length + start; i++) {
        res += this[i];
    };

    return res;
};